package org.example.meetingsystem.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.example.meetingsystem.entity.CancellationRequest;
import org.example.meetingsystem.enums.CancellationStatus;

import java.util.List;

public interface CancellationService {

    List<CancellationRequest> getPendingRequests();

    void processCancellationRequest(Long requestId, Boolean approved, Long processedBy);

    IPage<CancellationRequest> getCancellationRequests(Page<CancellationRequest> page, CancellationStatus status);

    Long createCancellationRequest(Long reservationId, String reason, Long requesterId);

    CancellationRequest getCancellationRequestById(Long id);
}
